package com._2_3;

import java.util.Random;

public class Control_12 {

	static void IntleftMove(String s, int i){//定义一个静态方法，带两个参数
		System.out.println("int var="+s +"="+i+",其二进制代码如下：");
		for(int j = 31; j >=0; j--)
			if(((1 << j) & i)!= 0){	//判断变量b左移1位与a变量做"与"操作，看是否不等于0
				System.out.println("1");
			}else{
				System.out.println("0");
			}
		System.out.println("");
	}
	
	static void LongleftMove(String s, long l){//定义一个静态方法，带两个参数
		System.out.println("long var="+s+"="+l+",其二进制代码如下：");
		for(int i = 63; i >=0;i--)
			if(((1L << i) & l)!=0){
				System.out.println("1");
			}else{
				System.out.println(0);
			}
		System.out.println("");
	}
	
	public static void main(String[] args) {
		System.out.println("对Int型数据进行移位的例子如下：\n");
		Random rand = new Random();//实例化一个random对象
		int a = rand.nextInt();
		int b = rand.nextInt();	//生产随机变量a与b
		//以下方法均调用IntleftMove方法
		IntleftMove("-1", -1);
		IntleftMove("+1", +1);
		int constant = 256987454;
		IntleftMove("Constant", constant);
	}
}
